package com.woniuxy.woniuticket.moviemodule.dao;

import com.woniuxy.woniuticket.moviemodule.pojo.ScheduleMsg;
import com.woniuxy.woniuticket.pojo.CinemaSchedule;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Mapper
public interface CinemaScheduleDAO {
    int deleteByPrimaryKey(Integer id);

    int insert(CinemaSchedule record);

    int insertSelective(CinemaSchedule record);

    CinemaSchedule selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(CinemaSchedule record);

    int updateByPrimaryKey(CinemaSchedule record);

    //根据排片id查询排片表的影片价格
    BigDecimal findMoviepriceByMovieId(Integer scheduleId);

    //根据影片id查询排片量
    int findNumByMovie(Integer id);

    //根据电影id查询对应的排片信息
    List<CinemaSchedule> findScheduleByMovie(Integer id);

    //查询排片信息作为热点消息推送给用户
    List<ScheduleMsg> querySchedule(@Param("date1") Date date1,@Param("date2") Date date2);

    //根据排片id查询某场电影的详情
    List<ScheduleMsg> queryScheduleMsg(Integer moiveId);

    //查询所有排片信息
    List<ScheduleMsg> queryAllSchedule(@Param("currentPage") Integer page,@Param("pageSize") Integer size);

    //删除不需要的排片信息
    int delSchedule(Integer[] scheduleids);

    //修改排片信息
    int editSchedule(ScheduleMsg scheduleMsg);

    //根据排片id查询某场电影的详情2
    List<ScheduleMsg> queryScheduleMsgList(Integer scheduleId);

    //根据排片拍片时间查询某场电影的详情2
    List<ScheduleMsg> queryScheduleMsgTime(@Param("movieId") Integer movieId,@Param("begTime") String begTime);

}